home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Trading on the Edge
/
Trading On The Edge - CD-ROM Toolkit (Wayzata Technology)(2031)(1994).bin
/
pc
/
mac_file
/
vendor_d
/
neuralwa
/
nw2v50
/
art1.iif
< prev
next >
Wrap
Text File
|
1993-08-23
|
7KB
|
278 lines
inst4.1
!****************************************************************
!* *
!* ART 1 Network Generator *
!* *
!****************************************************************
! *** check that input / output PE count is non-zero
?&In 1
>bge CheckOut
@Err "ART 1 MUST have at least one input PE"
:CheckOut
?&Prt 1
>bge OutOK
@Err "ART 1 MUST have at least one F2 Layer PE"
:OutOK
! *** Load the Control Strategy and LRS if needed
! Create the LR Schedule
@NLRS "art1" !New LR schedule
=rsta 10000 !Max recall count
=ArrX 3 !(Mod Factor)
=rcfa A1Vg !Vigilance
=rcft "Vigilance"
=ArrX 1 !Index coefficient 1
=lcfa A1LR !Learning Rate
=lcft "Learning Rate"
=ArrX 2 !Index coefficient 2
=lcfa A1Ch !Choice Parameter (L)
=lcft "Choice Param."
@SLRS !Save LRS to directory
@LdCS "art1" !control strategy
=netn "InstaNet (tm) ART 1 Network version 4.10 Sept-92"
=DLnF 0 !learn re-display off
=DRcF 0 !recall re-display off
! *** Build the Input Layer ***
@LLdf !load default layer to mi_layer structure
=LDln "Input" !layer name
=Lpes &In !copy # of input PEs from menu
=Ltrn "StepFunction" !transfer function
=x 150 !place to put layer on screen
=y 40
#Incl "stdnwgtf.iif" !standard # weight fields
@LAdd !add the input layer
! *** Build the Input Size layer and connect to Input layer ***
@LLdf !start with default layer again
=LDln "IP Sum" !layer name
=Lpes 1 !desired number of PEs
=x 100
+y 30 !up higher on display
#Incl "stdnwgtf.iif" !standard # weight fields
@LAdd
=NPEl 0 !input layer
@NrPE
=SPEl LayN !current layer
@SlPE
=cnwt 1.0 !connection weight
=cnty WFix !fixed connections
=cnsc WAbs !absolute
@LCFl !connect fully
=n0 LayN !track Input Size layer
! *** Build the Input Active layer and connect to Input size layer ***
@LLdf !start with default layer again
=LDln "IP Active" !layer name
=Lpes 1 !desired number of PEs
=Ltrn "StepFunction" !transfer function
=x 100
+y 30 !up higher on display
#Incl "stdnwgtf.iif" !standard # weight fields
@LAdd
=NPEl n0 !input size layer
@NrPE
=SPEl LayN !current layer
@SlPE
@LCFl !connect fully
=n1 LayN !track Input Active layer
! *** Build the F2 Active layer ***
@LLdf !start with default layer again
=LDln "F2 Active" !layer name
=Lpes 1 !desired number of PEs
=Ltrn "StepFunction" !transfer function
=x 50
+y 30 !up higher on display
#Incl "stdnwgtf.iif" !standard # weight fields
@LAdd
=n2 LayN !track F2 Active layer
! *** Build the Gain Control layer and connect to active layers ***
@LLdf !start with default layer again
=LDln "Gain Control" !layer name
=Lpes 1 !desired number of PEs
=Ltrn "StepFunction" !transfer function
=x 100
+y 30 !up higher on display
#Incl "stdnwgtf.iif" !standard # weight fields
@LAdd
=SPEl LayN !current layer
@SlPE
=NPEl n1 !input active layer
@NrPE
@LCFl !connect fully
=NPEl n2 !input active layer
@NrPE
=cnwt -1.0 !connection weight
@LCFl !connect fully
=n1 LayN !track Gain Control layer
! *** Build F1 layer and connect to input, gain control and bias ***
@LLdf !start with default layer again
=LDln "F1" !layer name
=Lpes &In !desired number of PEs
=Ltrn "StepFunction" !transfer function
=Llrn "ART 1" !learning rule
=LInL 1.0 !low initialization limit
=LInH 1.0 !high initialization limit
=x 150 !place to put layer on screen
+y 30 !up higher on display
#Incl "stdnwgtf.iif" !standard # weight fields
@LAdd
=SPEl LayN !current layer
@SlPE
=NPEl -1 !bias layer
@NrPE
=cnwt -1.5 !connection weight
@LCFl !connect fully
=NPEl 0 !input layer
@NrPE
=cnwt 1.0 !connection weight
@LCCr !connect correspondingly
=NPEl n1 !gain control layer
@NrPE
@LCFl !connect fully
=n1 LayN !track F1 layer
! *** Build the Vigilance layer and connect to Input Size layer and bias ***
@LLdf !start with default layer again
=LDln "Vigilance" !layer name
=Lpes 1 !desired number of PEs
=Lsum "Product" !summation function
=x 50
+y 30 !up higher on display
#Incl "stdnwgtf.iif" !standard # weight fields
@LAdd
=SPEl LayN !current layer
@SlPE
=NPEl n0 !Input Size layer
@NrPE
@LCFl !connect fully
=NPEl -1 !Bias
@NrPE
=cnty WMod !Modifiable connection
@LCFl !connect fully
=n0 LayN !track Vigilance layer
! *** Build the F1 Size layer and connect to F1 layer ***
@LLdf !start with default layer again
=LDln "F1 Sum" !layer name
=Lpes 1 !desired number of PEs
=x 100
+y 30 !up higher on display
#Incl "stdnwgtf.iif" !standard # weight fields
@LAdd
=NPEl n1 !F1 layer
@NrPE
=SPEl LayN !current layer
@SlPE
=cnty WFix !fixed connections
@LCFl !connect fully
=n3 LayN !track F1 Size layer
! *** Build Reset layer and connect to F1 layer ***
@LLdf !start with default layer again
=LDln "Reset" !layer name
=Lpes 1 !desired number of PEs
=Ltrn "StepFunction" !transfer function
=x 50
+y 30 !up higher on display
#Incl "stdnwgtf.iif" !standard # weight fields
@LAdd
=SPEl LayN !current layer
@SlPE
=NPEl n0 !Vigilance layer
@NrPE
=cnty WFix !Fixed connection
@LCFl !connect fully
=NPEl n3 !F1 size layer
@NrPE
=cnwt -1.0 !connection weight
@LCFl !connect fully
=n0 LayN !track Reset layer
! *** Build F2 layer and connect to reset layer ***
@LLdf !start with default layer again
=LDln "F2" !layer name
=Lpes &Prt !desired number of PEs
=Lcmp "One-Active-Highest" !output function
=Llrn "ART 1" !learning rule
=LInL 0.0 !low initialization limit = 0.0
=LInH 1.0 !high initialization limit
/LInH &In ! = 1.0/M
=x 150 !place to put layer on screen
+y 30 !up higher on display
#Incl "stdnwgtf.iif" !standard # weight fields
@LAdd
=SPEl LayN !current layer
@SlPE
=NPEl n0 !Reset layer
@NrPE
=cnty WSet !Fixed connection
=cnwt 1.0 !connection weight
@LCFl !connect fully
=n0 LayN !track F2 layer
! *** Connect F2 layer to the F2 active layer ***
=SPEl n2 !F2 active layer
@SlPE
=NPEl n0 !F2 layer
@NrPE
=cnty WFix !Fixed connection
=cnwt 1.0 !connection weight
@LCFl !connect fully
! *** Connect F1 and F2 layers ***
=cnwt 1.0
=cnty WVar !variable so they can "learn"
=SPEl n0 !F2 layer
@SlPE
=NPEl n1 !F1 layer
@NrPE
@LCFl !Bottom Up connections
=SPEl n1 !F1 layer
@SlPE
=NPEl n0 !F2 layer
@NrPE
@LCFl !Top Down Connections
! *** Select Control Strategy & L/R Schedule ***
@LLsl !load super layer
=Lctl "art1" !control strategy
=Llrs "art1" !L/R Schedule
=Llnn "art1" !name of learn input
=Lrcn "art1" !name of recall output
#Incl "stdioset.iif" !standard I/O settings
+Lflg LAAs !auto-associative network
=Lscl 0 !input low-value
=Loff 1 !input high-value
=Llow 0 !output low-value
=Lhgh 1 !output high-value
=Lax1 Epch !epoch size
@SVsl !save it back
!
=Grph 1
=GrLF "art1" !instrument list file
@Nini !initialize the network
@EOF